forty-four things tagged “web development”
Dr. Axel’s JavaScript Flashcards
He’s also written and published this amazing book.
fffuel.co is a lovely collection of CSS and SVG tools
Here’s a lovely noise generator, for example.
Navidrome is a free, open-source music player with a web UI
Here’s a demo site (demo:demo). I was able to launch it in under 30 seconds (M2 MacBook Air, 24GiB) against a ~200GiB music library.
UX and beets integration aside, it’s essentially what I tried to build a long while ago. A simple music player (based on Rust/Golang, SQLite, and simple Web APIs) whose UI made sense to normal and reasonable people and not ambitious product managers.
CASCII is a lovely ASCII editor for the browser
And it’s a single file! I’ve cached it here. This is a lite version of one of my favorite apps, the excellent (and surprisingly cheap) MonoDraw for macOS.
Live-Reloading Middleware for Bun.js
A pretty comprehensive solution! I was looking for this when attempting to learn me some Bun and make a small script that would live-reload a single page (with SASS and Tailwind). And voila: a significantly better solution than the duct tapey thing I came up with 🤣
Pagefind, a fully client-side search library
Lovely. Uses some kind of sharding to intelligently get ‘pages’ of relevance. The WASM size is only ~70kB, compared to SQLite’s WASM’s ~460kB.
Parsing X/HTML with Regex
by StackOverflow
You can’t parse [X]HTML with regex. Because HTML can’t be parsed by regex. Regex is not a tool that can be used to correctly parse HTML. As I have answered in HTML-and-regex questions here so many times before, the use of regex will not allow you to consume HTML. Regular expressions are a tool that…
In Defence of the Single Page Application
Trenchant, brilliant stuff by William Kennedy 💯 (Cached)…
“Revolution is possible. But it’s unlikely that we will be fighting for revolution alongside the same venture capitalists and tech companies who helped to get us into this mess in the first place [...] Dig deep. Ask the hard questions. Criticize the flaws. And cut through the bullshit.”
Molly White asks if Web3 is bullshit. Short and excellent talk.…
“I Fucking Hate Jira” is a collection of people sharing their feelings about one of the worst pieces of software I continue to use every day.
Jira is middle-management-ware, a term I made up for software that serves the needs of middle management, or, at least, the needs middle management thinks it has, which comes to the same thing as long as you’re selling to them. (link) Jira is a tire fire. It should be condemned and officially d…
pup is a delightful little command-line utility that lets you parse HTML
Think jq but for HTML/DOM. If you wanted to get all the post titles on this log, curl -s -o - https://log.nikhil.io/ | gunzip - | pup "header > h2 > a" text{} Lovely stuff.…
Adventuron is a framework that lets you create old-school Text Adventure games for a browser
Here’s a giant list of games people have created with it. Here’s a teeny little introductory adventure. I plan on playing The Quest of DuBebe this evening:…
The Art of Node
by maxogden
The Art of Node # An introduction to Node.js # This document is intended for readers who know at least a little bit of a couple of things: a scripting language like JavaScript, Ruby, Python, Perl, etc. If you aren’t a programmer yet then it is probably easier to start by reading JavaScript for…
Every Website in 2020
Low resolution but enough to make the point. See also: Every Website in 2019 and 2018. The mobile web is a garbage nightmare shitshow (especially if you want to read any fucking news.) Here’s my dealership’s website on my phone.…
“Everyone has JavaScript, right?”
The key takeaways in no particular order. Use <noscript>. If you are using it, use it a lot more. There is no guarantee that chunks will load after the main one does; the user’s location and/or network access might have changed! Think CalTrain. ISPs, Corporate VPNs, and Browser Plugins1 c…
How Big is Too Big for JSON?
From over 10 years ago (I’m sorting through my old bookmarks). A single object looks like this: { "ACCTOUNT_NUMBER":"1234567890", "CUSTOMER_NAME":"ACME Products and Services, Inc.", "ADDRESS":"123 Main Street", "CITY":"Albuquerque", "STATE":"NM", "ZIP":"87101-1234" } He te…
On Polyfills and Internet Explorer
[…] it’s not okay to block old browsers, but it’s a waste of time to support them 100%. Chris Heilmann…
This is a fine, minimal ‘modern’ HTML Skeleton
by Josh Comeau. Saving here to refer to later. Here’s another by Manuel Matuzovic. It features a lot more OG tags and a most clever way to cut the mustard apropos modern browsers. Saved here.…
The Script Tag
A handy-dandy visual guide to the <script> tag, its various attributes, and how they relate to HTML parsing. Source unknown.…
Docsify is a Markdown-based documentation generator.
It’s very simple and clever. This is an example of what’s rendered from this giant Markdown file 💙…
The Dinosaur in Google Chrome
Here’s a fairly recent (Dec 2018) interview with the creators of chrome://dino. It was called Project Bolan (which I had to look up), had 270M games played every month1, with most users coming “from markets with unreliable or expensive mobile data, like India, Brazil, Mexico, or Indonesia” and took…
Four Months of Frontend Development
This is a new personal record. Will go six months the next time 🎸…
The KCCI Website is a Terrible Crock of Shit
This is what it takes to read a bloody article with a PiHole to block ads. I don’t even want to get started on the AMP nonsense. First, a focus-stealing popup asking if you’d like to subscribe to some bullshit. . . . followed by another popup asking you’d subscribe to more bullshit. . . . a…
On Auto-Fucking-Play
Dear web developers, The answer is zero. Zero. Get it through your thick skulls. Zero is the number of times anyone has EVER wanted something to autoplay on your site and start making noise. I’d honestly rather you mine crypto-currency in my browser than use my speakers. #kthxbye @MalwareJake…
Every Website in 2019
Source. See also: Every website in 2018…
CVS Receipt Generator
Garrett Whisten made a most amazing CVS receipt generator (cached). He even wrote a scraper that gets real product names off their website 🙏 🙌…
UI Pedantry
Can’t Unsee is “Spot the difference” for UI nerds. 6530. On the “hard” sections, wondered how much the minutiae matter if a user is unable to discern the difference between two comps after a few seconds. Via Deepu…
Desperation
margin: 0; padding: 0; ... margin: 0 !important; padding: 0 !important; ... sudo margin: 0 !important; sudo padding: 0 !important via @thebarrytone…
Every Website in 2018
Source…
A most excellent introduction to SVG
All a typical dev would need to know really.
Understanding Regular Expression matching with .test(), .match(), .exec(), .search() and .split()
All these years and I find myself reaching for this reference quite a few times…